1
상수를 넘어서: 러스트 열거형의 힘
AI034Lesson 6
00:00

러스트에서는 열거형 (enum)은 단순한 목록을 넘어서는 존재입니다. 그것은 가능성의 구조 설계도와 같습니다. 느슨하게 그룹화된 정수와 달리, 열거형은 합집합 타입이라는 의미로, 변수가 여러 개의 서로 다른 변형중 하나만 나타낼 수 있다는 것을 의미합니다.

1. 네임스페이싱 및 범위

변형들은 두 콜론(::) 연산자를 사용해 열거형 식별자 아래에 깔끔하게 배치됩니다. 이 네임스페이싱 은 서로 다른 모듈, 크레이트또는 패키지간의 충돌을 방지합니다. 이를 통해 다양한 맥락에서 V4 변형을 명확하지 않은 상태로 정의할 수 있습니다.

열거형 범위: IpAddrKind::V4::V6서로 배타적

2. 타입 안전성

함수 인수로 열거형을 사용함으로써, 표준 라이브러리 패턴은 유효한 상태만 로직 내부로 들어오도록 보장합니다. 이는 잠재적인 런타임 오류를 컴파일 시점으로 옮기며, 당신의 route 함수가 존재하지 않는 "v5" 주소를 처리해야 할 필요가 없음을 보장합니다.

main.py
TERMINALbash — 80x24
> Ready. Click "Run" to execute.
>